#ifndef ESTRATEGIARECURSOUNALMACENAMIENTO_H_
#define ESTRATEGIARECURSOUNALMACENAMIENTO_H_

#include "EstrategiaRecurso.h"

class Almacenamiento;

class EstrategiaRecursoUnAlmacenamiento: public EstrategiaRecurso {

public:
	/*
	 * Pre: Archivo valido.
	 * Pos: Crea una nueva instancia.
	 */
	EstrategiaRecursoUnAlmacenamiento(Archivo* archivo);

	/*
	 * Pre: -
	 * Pos: Libera los recursos instanciados.
	 */
	virtual ~EstrategiaRecursoUnAlmacenamiento();

	/*
	 * Pre: Offset valido.
	 * Pos: Escribe los bytes en el archivo.
	 */
	void escribir(const Bytes& bytes, offset offset);

	/*
	 * Pre: -
	 * Pos: Offset valido.
	 */
	Bytes leer(offset offset, cantBytes cantBytes);
};

#endif /* ESTRATEGIARECURSOUNALMACENAMIENTO_H_ */
